Skip to content

Release v0.1.83 BAML LangGraph extract runtime#29

Merged
kargarisaac merged 8 commits into
mainfrom
feat/baml_langgraph
May 14, 2026
Merged

Release v0.1.83 BAML LangGraph extract runtime#29
kargarisaac merged 8 commits into
mainfrom
feat/baml_langgraph

Conversation

@kargarisaac
Copy link
Copy Markdown
Contributor

Summary

  • replace the extract path with the BAML/LangGraph harness packaged under src/lerim/agents
  • harden the session catalog, API status, queue heartbeat, and idempotent extract persistence paths
  • tune BAML extraction prompts to avoid incidental personal names in future records
  • update changelog for the v0.1.83 release

Validation

  • uv run baml-cli check
  • uv run baml-cli generate
  • uv run baml-cli test -i "::ScanTraceWindowAvoidsIncidentalPersonalName" -i "::SynthesizeExtractRecordsAvoidsIncidentalPersonalName" --parallel 1
  • uv run pytest tests/unit/agents/extract/test_persistence.py tests/unit/sessions/test_catalog.py tests/unit/server/test_api.py tests/unit/server/test_daemon_functions.py tests/unit/server/test_daemon_sync_maintain.py tests/unit/agents/test_agent_build.py -q
  • uv run ruff check ...
  • uv run vulture
  • git push pre-push hooks: ruff and vulture passed

Release

  • version: 0.1.83
  • previous release: v0.1.82

- Created a `.gitignore` file to exclude temporary files and Python cache directories.
- Added a `README.md` to document the BAML agents, detailing their purpose, usage, and dependencies.
- Introduced the `baml_client` module with various components including `async_client`, `sync_client`, `config`, `globals`, `parser`, `runtime`, `stream_types`, and `tracing`, establishing the foundational structure for BAML agent functionality.
- Implemented classes and methods for handling asynchronous and synchronous client operations, response parsing, and configuration management.

This commit sets up the groundwork for further development of BAML agents and their integration with the Lerim framework.
- Updated the README to reflect the integration of BAML with LangGraph for improved trace window scanning and record synthesis.
- Renamed and refactored methods in the BamlAsyncClient, BamlSyncClient, and BamlStreamClient to support new functionalities: ScanTraceWindow and SynthesizeExtractRecords.
- Introduced new types for handling synthesized extractions and trace window scans, enhancing type safety and clarity in the codebase.
- Updated the type builder and type map to reflect the removal of deprecated classes and the addition of new types.
- Enhanced documentation for the BAML agents, including usage examples for the new methods and updated descriptions for existing functionalities.

This commit improves the overall structure and usability of the BAML agents, aligning them with the latest design and functionality requirements.
- Deleted the run.py script, which served as the command-line entry point for the BAML extraction experiment.
- Removed tool_bridge.py, which acted as a bridge for synthesizing BAML records to Lerim's extraction tools.
- Eliminated extract_react.baml and extract_react_tests.baml, which defined the BAML structure and tests for extraction processes.
- Cleared out generators.baml and models.baml, which contained generator configurations and client definitions for the extraction agent.
- Updated README to reflect the new architecture using BAML and LangGraph for synchronization and agent execution.
- Removed the PydanticAI-only extract agent, replacing it with a new BAML runtime module for agent flows.
- Adjusted agent flow documentation and structure to include new directories for BAML source and client files.
- Enhanced the organization of agent tools and updated references to align with the new architecture.

This commit improves the clarity and functionality of the Lerim agents, ensuring they are better integrated with the latest BAML features.
- Removed references to `read_trace` and replaced them with `read_window` across various test cases and expectations to align with the new extraction logic.
- Introduced `EXTRACT_EVENT_NAMES` to replace `EXTRACT_TOOL_NAMES` in integration tests, enhancing clarity in tool usage.
- Updated README to reflect changes in extraction tools and their functionalities.
- Added new expectations for handling very long traces, ensuring proper tool usage and context management.

This commit improves the consistency and accuracy of the extraction process, ensuring that the latest tools and methodologies are correctly represented in the tests and documentation.
- Added new BAML source and client packaging under `src/lerim/agents/` to facilitate shared layouts for future agents.
- Introduced a production BAML/LangGraph extract package featuring deterministic trace windowing, typed BAML scans, record synthesis, context-store persistence, and structured graph events.
- Replaced the legacy PydanticAI extract agent with the BAML/LangGraph harness, updating extraction evaluations, integration tests, documentation, and run artifacts accordingly.
- Removed outdated components including the legacy PydanticAI extract agent and associated tools.
- Updated `pyproject.toml` to reflect the new version and added dependencies for `baml-py` and `langgraph`.
- Enhanced documentation to clarify the new agent runtime and extraction processes, ensuring better user guidance and understanding of the updated functionalities.
@kargarisaac kargarisaac merged commit 4bd0d38 into main May 14, 2026
1 check passed
@kargarisaac kargarisaac deleted the feat/baml_langgraph branch May 14, 2026 09:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant